package com.myjob.entity;

import java.util.Date;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.*;
import lombok.experimental.Accessors;

import java.io.Serializable;
/**
 * @author Chen Yuan
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
/** Lombok链式编程 */
@Accessors(chain = true)
@TableName("user")
public class User implements Serializable {
	/** 用户编号 */

	@TableId(value = "user_id", type = IdType.ID_WORKER_STR)
	private String userId;

	/** 用户姓名 */
	@TableId("user_name")
	private String userName;

	/** 用户手机号 */
	@TableId("phone")
	private String phone;

	/** 用户邮箱 */
	@TableId("email")
	private String email;

	/** 账户密码 */
	@TableId("password")
	private String password;

	/** 用户类型 */
	@TableId("role")
	private String role;

	@TableField(exist = false)
	private String roleCode;

	/** 账户建立时间 */
	@TableId("account_create_time")
	@TableField(fill = FieldFill.INSERT)
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="Asia/Shanghai")
	private Date accountCreateTime;

	/** 账户状态 */
	@TableId("account_status")
	private String accountStatus;

	/** 账户状态改变时间 */
	@TableId("status_update_time")
	@TableField(fill = FieldFill.INSERT_UPDATE)
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="Asia/Shanghai")
	private Date statusUpdateTime;

	/** 修改账户状态的处理者编号 */
	@TableId("status_update_handler_id")
	private String statusUpdateHandlerId;

	/** 修改账户状态的处理者姓名 */
	@TableId("status_update_handler_name")
	private String statusUpdateHandlerName;

	/** 收藏的岗位 */
	@TableId("bookmarks")
	private String bookmarks;

	/** 收藏的企业 */
	@TableId("follows")
	private String follows;

	// 照片
	private String photo;

}
